package veterinaria.negocio;

import java.util.Collection;

import veterinaria.excepcion.LoginExcepcion;
import veterinaria.dao.UsuarioDAO;
import veterinaria.excepcion.DAOExcepcion;
import veterinaria.modelo.Usuario;

public class GestionAdministrarUsuarios {
	public Collection<Usuario> buscarPorUsuario(int idusuario)
			throws DAOExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		return dao.listar();
	}

	public Usuario insertar(int idUsuario, String dsClave, String dsUsuario, boolean flAdmin, String stActivo)
			throws DAOExcepcion {
		UsuarioDAO dao = new UsuarioDAO();

		Usuario vo = new Usuario();
		vo.setIdUsuario(idUsuario);
		vo.setDsClave(dsClave);
		vo.setDsUsuario(dsUsuario);
		vo.setFlAdmin(flAdmin);
		vo.setStActivo(stActivo);
		
		return dao.insertar(vo);
	}

	public Usuario obtener(int idUsuario) throws DAOExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		return dao.obtener(idUsuario);
	}

	public void eliminar(int idUsuario) throws DAOExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		dao.eliminar(idUsuario);
	}

	public Usuario actualizar(int idUsuario, String dsClave, String dsUsuario, boolean flAdmin, String stActivo)
			throws DAOExcepcion {
		UsuarioDAO dao = new UsuarioDAO();

		Usuario vo = new Usuario();
		vo.setIdUsuario(idUsuario);
		vo.setDsClave(dsClave);
		vo.setDsUsuario(dsUsuario);
		vo.setFlAdmin(flAdmin);
		vo.setStActivo(stActivo);
		
		return dao.actualizar(vo);
	}

	public Collection<Usuario> listar() throws DAOExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		return dao.listar();
	}
	
	public Usuario validarUsuario(int idUsuario, String dsClave)
			throws DAOExcepcion, LoginExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		return dao.validar(idUsuario, dsClave);
	}

	public Usuario insertar(int idUsuario, String stActivo, String dsClave, String dsUsuario, boolean flAdmin)
			throws DAOExcepcion {
		Usuario vo = new Usuario();
		vo.setIdUsuario(idUsuario);
		vo.setDsClave(dsClave);
		vo.setDsUsuario(dsUsuario);
		vo.setFlAdmin(flAdmin);
		vo.setStActivo(stActivo);
		
		UsuarioDAO dao = new UsuarioDAO();
		return dao.insertar(vo);
	}

}

